home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
QuickTime 1.0 for Developers
/
QuickTime 1.0 for Developers.iso
/
Programming Stuff
/
vdig sample
/
RO364.h
< prev
next >
Wrap
C/C++ Source or Header
|
1991-08-26
|
7KB
|
166 lines
/*
File: RO364.h
Contains: xxx put contents here xxx
Written by: xxx put writers here xxx
Copyright: © 1991 by Apple Computer, Inc., all rights reserved.
This file is used in these builds: Warhol
Change History (most recent first):
<13> 8/20/91 CK Add 3 new calls for async multi buffering, fix input selection
for PAL, add a couple of globals
<12> 5/5/91 CK add set and get pllFiltertype (for 24stv)
<11> 5/5/91 CK move to components.h, remove unused stuff, add bumpOne.
<10> 5/2/91 CK Add haveSTV global and increment code rev.
<9> 5/1/91 CK Add 5 new source selection routines, add inputSource global
<8> 4/17/91 CK add code revision constant to be used in GetVersion (lo word)
<7> 4/16/91 CK add a couple of routines, delete unused routines, add a couple
of globals, remove outdated header files
<6> 3/26/91 CK add playthru routines, change getauxbuffer i/f, add playthru
state and auxpixmap to globals
<5> 2/24/91 CK Change ThingError to VideoDigitizerError, add 2 new mask calls
(v1.0d3)
<4> 2/23/91 CK Add new calls (v1.0d3), add exact parameter to SetDigitizerRect,
change GetMaskgDevice to GetMaskPixMap.
<3> 2/18/91 CK fixed some prototypes, added some globals
<2> 2/13/91 CK Change to new header files (from DIGI & Matrix), add gdh to
thing globals
To Do:
*/
/* RO364 Unique R0364.h */
/*
File name: RO364.h
Function: Header file for a RO364 digitizer thing
History: 1/23/91 New today
*/
#ifndef _RO364_
#define _RO364_
#ifndef _MoviesRoutines_
/* #include "Movies Routines.h" */
#endif
#ifndef _videodigitizer_
#include "video digitizer.h"
#endif
/* revision constants */
#define kCodeRev 11
/* Constants unique to Touchstone */
#define kMaxHorNTSCIn 640
#define kMaxVerNTSCIn 480
#define kMaxHorPALIn 768
#define kMaxVerPALIn 576
#define kVerBlank 20
typedef struct {
short top;
short left;
short pixelSize;
Boolean doneState; /* 0 off or in progress, 1 done */
} VdigBufferLocal;
typedef struct {
short count;
VdigBufferLocal list[1];
} VdigBufferLocalList;
typedef VdigBufferLocalList *VdigBufferLocalListPtr, **VdigBufferLocalListHandle;
typedef struct {
short refNum; /* RO364 card reference number */
GDHandle gdh;
char slot;
PixMapHandle pixMapHndl, destPixMapHndl;
PixMapHandle auxBufferPixMapHandle;
Rect maxSrcRect;
Rect activeRect;
Rect vBlankRect;
Rect digiRect;
Rect destRect;
Ptr baddr;
short rowBytes;
short pixelSize;
MatrixRecord matrix;
short state;
short playThruState;
long inputFlags;
long outputFlags;
unsigned short contrast;
unsigned short hue;
unsigned short brightness;
unsigned short saturation;
unsigned short blackLevel;
unsigned short whiteLevel;
CntrlParam gpb;
short top;
short left;
PixMapHandle nextDest;
Point nextDestPt;
short inputSource; /* zero based, 0 = composite, 1 = sVideo */
short inputStd;
Boolean haveSTV; /* false = ro364, true = ro24stv */
Boolean bumpOne; /* true if destination top was odd and 1 added to it */
VdigBufferLocalListHandle bufferList;
} Globals;
pascal ComponentResult RO364Thing( ComponentParameters *params, Handle storage );
/* Internal thing prototypes - called with CallMyFunction from digi thing dispatcher */
pascal VideoDigitizerError GetMaxSrcRect(Handle storage, short inputStd, Rect *maxSrcRect);
pascal VideoDigitizerError GetActiveSrcRect(Handle storage, short inputStd, Rect *activeSrcRect);
pascal VideoDigitizerError SetDigitizerRect(Handle storage, Rect *digitizerRect);
pascal VideoDigitizerError GetDigitizerRect(Handle storage, Rect *digitizerRect);
pascal VideoDigitizerError GetVBlankRect(Handle storage, short inputStd, Rect *vBlankRect);
pascal VideoDigitizerError SetContrast(Handle storage, unsigned short *contrast);
pascal VideoDigitizerError SetHue(Handle storage, unsigned short *hue);
pascal VideoDigitizerError SetBrightness(Handle storage, unsigned short *brightness);
pascal VideoDigitizerError SetSaturation(Handle storage, unsigned short *saturation);
pascal VideoDigitizerError SetBlackLevel(Handle storage, unsigned short *blackLevel);
pascal VideoDigitizerError SetWhiteLevel(Handle storage, unsigned short *whiteLevel);
pascal VideoDigitizerError GetContrast(Handle storage, unsigned short *contrast);
pascal VideoDigitizerError GetHue(Handle storage, unsigned short *hue);
pascal VideoDigitizerError GetBrightness(Handle storage, unsigned short *brightness);
pascal VideoDigitizerError GetSaturation(Handle storage, unsigned short *saturation);
pascal VideoDigitizerError GetBlackLevel(Handle storage, unsigned short *blackLevel);
pascal VideoDigitizerError GetWhiteLevel(Handle storage, unsigned short *whiteLevel);
pascal VideoDigitizerError GetVideoDefaults(Handle storage,
unsigned short *blackLevel, unsigned short *whiteLevel,
unsigned short *brightness, unsigned short *hue, unsigned short *saturation,
unsigned short *contrast, unsigned short *sharpness);
pascal VideoDigitizerError GrabOneFrame(Handle storage);
pascal VideoDigitizerError GetMaxAuxBuffer(Handle storage, PixMapHandle *pm, Rect *r);
pascal VideoDigitizerError GetDigitizerInfo(Handle storage, DigitizerInfo *info);
pascal VideoDigitizerError GetCurrentFlags(Handle storage, long *inputCurrentFlag, long *outputCurrentFlag);
pascal VideoDigitizerError SetPLLFilterType(Handle storage, short pllType);
pascal VideoDigitizerError GetPLLFilterType(Handle storage, short *pllType);
pascal VideoDigitizerError SetPlayThruDestination(Handle storage, PixMapHandle dest, Rect *destRect, MatrixRecord *m, RgnHandle mask);
pascal VideoDigitizerError SetPlayThruOnOff(Handle storage, short state);
pascal VideoDigitizerError GetPlayThruDestination(Handle storage, PixMapHandle *dest, Rect *destRect,
MatrixRecord *m, RgnHandle *mask);
pascal VideoDigitizerError GrabOneFrameAsync(Handle storage, Boolean bufferingOn, PixMapHandle nextDest, Point nextDestPt);
pascal long Done(Handle storage);
pascal VideoDigitizerError GetNumberOfInputs(short *inputs);
pascal VideoDigitizerError GetInputFormat(short input, short *format);
pascal VideoDigitizerError SetInput(Handle storage, short input);
pascal VideoDigitizerError GetInput(Handle storage, short *input);
pascal VideoDigitizerError SetInputStandard(Handle storage, short inputStandard);
pascal VideoDigitizerError SetupBuffers(Handle storage, VdigBufferRecListHandle bufferList);
pascal VideoDigitizerError GrabOneFrameAsync2(Handle storage, short buffer);
pascal long Done2(Handle storage, short buffer);
#endif _RO364_